<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<% String path=request.getContextPath(); String basePath=request.getScheme()+ "://" + request.getServerName() + ":" + request.getServerPort() + path+ "/"; %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<base href="<%=basePath%>">
<title>激活卡模板新增</title>

<link rel="stylesheet" href="<%=path%>/css/zTreeStyle/zTreeStyle.css">
<%@ include file="/WEB-INF/jsp/common/common.jsp"%>
<script type="text/javascript" src="<%=path%>/js/jquery.ztree.core-3.5.js"></script>
<script type="text/javascript" src="<%=path%>/js/jquery.ztree.excheck-3.5.js"></script>
<script src="js/jquery.divbox.js" type="text/javascript"></script>

<style type="text/css">
.scroll_body {
	height: 300px;
	overflow: scroll;
	overflow-x: hidden;
	padding: 20px 100px 0;
	margin-bottom: 20px;
}
.fr {
	float: right;
}
.fl {
	float: left;
}
.w_50 {
	width: 50%;
}
label {
	padding-right: 20px;
}
/* 清除浮动 */
.clear::after {
	clear:both;
	content:'.';
	display:block;
	width: 0;
	height: 0;
	visibility:hidden;
}/*==for FF/chrome/opera/IE8==*/
.div_body {
	padding: 20px;
}
.h_30 {
	height: 30px;
}
.hide {
    display: none;
}
</style>
<script type="text/javascript">
//获取url中的参数 start
function getUrlParam(name) {
    var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)"); //构造一个含有目标参数的正则表达式对象
    var r = window.location.search.substr(1).match(reg);  //匹配目标参数
    if (r != null) return unescape(r[2]); return null; //返回参数值
}
//获取url中的参数 end
// 编辑初始化 start
function editInit() {
	/* 查询编辑数据 */
	if (getUrlParam('userid')) {
		// $('.open_btn').css('display', 'none')
		getuserinfo({userid: getUrlParam('userid')})// 查询用户信息 
		$('.add_link').html('编辑')
		$('#reset').css('display', 'none')
	}
}
// 编辑初始化 end
// 查询用户信息 start
function getuserinfo(param) {
	$.openLoading();
	$.ajax({
		url : "cardPower/getuserinfo",
		type : 'POST',
		async : true,
		data:param,
		dataType:'json',
		success:function(data){
			$.closeLoading();
			$('#usercode').val(data.gatewayUser.userCode);
			$('#username').val(data.gatewayUser.userName);
			$('#comCode').val(data.gatewayUser.userComcode);
			$('#telephone').val(data.gatewayUser.telephone);
			$('#email').val(data.gatewayUser.email);
			$('#usercode').attr("disabled",true)
			// 根据机构显示角色 lfd added 20181119 start ----------------------
            console.log(data.gatewayUser.userComcode)
            if (data.gatewayUser.userComcode === '00') {
                // 总公司
                $('.headOffice').show()
            } else if (data.gatewayUser.userComcode.length === 2) {
                // 分公司
                $('.branchOffice').show()
            } else if (data.gatewayUser.userComcode.length === 4 || data.gatewayUser.userComcode.length === 6) {
                // 中支公司或支公司
                $('.branchCompany').show()
            } else if (data.gatewayUser.userComcode.length === 8) {
                // 出单机构
                $('.billingAgency').show()
            }
            // 根据机构显示角色 lfd added 20181119 end ----------------------
			/* 角色信息 start */
			var roleArr = data.gatewayRoleList
			$.each(roleArr, function (i, v) {
				$('#role_' + v.roleid).attr('checked', true)
				// lfd added 20181009 start
				$('#role_' + v.roleid).show()
                $('#role_' + v.roleid).next().show()
                // lfd added 20181009 end
			})
			/* 角色信息 end */
			/* lfd added 20181112 根据角色信息 显示权限信息 start */
			if ($('.branchOffice').eq(0).is(':checked')) {
		        // 权限
		        $('.powerTr').show()
		        // 卡申请
		        $('.powerLabel').eq(0).show()
		        $('.powerInput').eq(0).show()
		        // 卡复核
		        $('.powerLabel').eq(1).show()
		        $('.powerInput').eq(1).show()
		    } else if ($('.headOffice').eq(0).is(':checked')) {
		        // 权限
		        $('.powerTr').show()
		        // 卡核准及导出excel
		        $('.powerLabel').eq(2).show()
		        $('.powerInput').eq(2).show()
		        // 卡延期
		        $('.powerLabel').eq(3).show()
		        $('.powerInput').eq(3).show()
		    } else {
		    	// 重置权限
	            hidePower()
		    }
			/* lfd added 20181112 根据角色信息 显示权限信息 end */
	        /* 权限信息 start */
            var power = data.gatewayUser.userPower
            var powerArr = power ? power.split('') : [0,0,0,0,0,0]
            $.each(powerArr, function (i, v) {
                var id = '#auth_' + i
                if (v === '1') {
                    $(id).attr('checked', true)
                    // lfd added 20181009 start
                    $(id).show()
                    $(id).next().show()
                    $(id).parent().parent().show()
                    // lfd added 20181009 end
                }
            })
            /* 权限信息 end */
		}
	});
}
//查询用户信息 end
// 查询所有角色 start
function selectUser() {
	$.ajax({
		url : "cardPower/queryallrole",
		type : 'POST',
		async : true,
		dataType:'json',
		success: function(data){
			$.each(data, function (i, v) {
				// $('.roleidBox').prepend('<input name="roleName" type="checkbox" value="' + v.roleid + '" id="role_' + v.roleid + '"> <label for="role_' + v.roleid + '">' +  v.roleName + '</label>')
			    // 隐藏除管理员外的角色 添加不同的类名 lfd added 20181008 start
			    var className
			    if (v.roleName === 'JHK_管理员') {
			    	className = 'administrator'
			    } else if (v.roleName === 'JHK_总公司') {
			    	className = 'headOffice hide comRole'
			    } else if (v.roleName === 'JHK_分公司') {
			    	className = 'branchOffice hide comRole'
			    } else if (v.roleName === 'JHK_中支/支公司') {
			    	className = 'branchCompany hide comRole'
			    } else if (v.roleName === 'JHK_出单机构') {
			    	className = 'billingAgency hide comRole'
			    }
			    $('.roleidBox').prepend('<input name="roleName" class="' + className  + '" type="checkbox" value="' + v.roleid + '" id="role_' + v.roleid + '"> <label class="' + className + '" for="role_' + v.roleid + '">' +  v.roleName + '</label>')
			})
			// lfd added 20181010 start
		    //选择总公司角色
		    $('.headOffice').eq(0).change(function () {
		        setHeadOffice()
		    })
		    // 选择分公司角色
		    $('.branchOffice').eq(0).change(function () {
		        setBranchOffice()
		    })
		    // 选择中支/支公司角色
		    $('.branchCompany').eq(0).change(function () {
		        // 重置权限
		        hidePower()
		    })
		    // 选择出单机构角色
		    $('.billingAgency').eq(0).change(function () {
		        // 重置权限
		        hidePower()
		    })
		    // lfd added 20181010 end
		}
	});
}
// 查询所有角色 end
// 初始化方法 start
$(function init() {
	selectUser()// 查询所有角色 
	editInit()// 编辑初始化
	// 人员  user_code 去空格 lfd added 20181204
	$('#usercode').change(function(){
	    $('#usercode').val($.trim($('#usercode').val()))
	});
})
// 初始化方法 end
// 机构列表初始化 start 
function menuTreeInit() {
	// ztree 配置
	var setting = {
		view: {
			selectedMulti: false,
			showIcon: false
		},
		data: {
			simpleData: {
				enable: true,
				idKey: "id",
				pIdKey: "pId"
			}
		},
		async: {
			enable: true,
			url:"cardPower/querycompanydown",// 查询下级机构
			autoParam:["id"],
			dataFilter: filter,
			dataType: 'json'
		}
	};
	// 展示机构树
	$.fn.zTree.init($("#ztree"), setting);
}
// 初始化 end 
/**
 * 数据过滤 start
 * treeId 对应 zTree 的 treeId，便于用户操控
 * parentNode 进行异步加载的父节点 JSON 数据对象
 * 异步加载获取到的数据转换后的 Array(JSON) / JSON / String 数据对象
 */
function filter(treeId, parentNode, childNodes) {
	if (!childNodes) return null;
	var newChildNodes = $.map(childNodes, function (v, i) {
		var item = {
			'id': v.deptCode,
			'pid': v.snrDept,
			//拼接结构号 lfd added 20181008 start
			'name': v.deptCode + '-' + v.deptCname,
			//拼接结构号 lfd added 20181008 end
			'isParent': true
		}
		return item
	})
	return newChildNodes;
}
// 数据过滤 end
// 选择机构 start
function selectDept() {
	var treeObj = $.fn.zTree.getZTreeObj("ztree");
	var nodes = treeObj.getSelectedNodes();
	if(nodes.length!=0){
		$('#comCode').val(nodes[0].id)
		$.fn.zTree.destroy("ztree");// 销毁机构树
		closeDeptDiv()
		// 根据机构显示角色 lfd added 20181008 start ----------------------
		if (nodes[0].id === '00') {
			// 总公司
			$('.headOffice').show()
		} else if (nodes[0].id.length === 2) {
			// 分公司
			$('.branchOffice').show()
		} else if (nodes[0].id.length === 4 || nodes[0].id.length === 6) {
			// 中支公司或支公司
			$('.branchCompany').show()
		} else if (nodes[0].id.length === 8) {
			// 出单机构
			$('.billingAgency').show()
		}
		// 根据机构显示角色 lfd added 20181008 end ----------------------
	}else{
		$.message("error", "请选择机构！");
	}
}
// 选择机构 end
// 隐藏 权限 lfd added 20181010
function hidePower() {
    $('.powerTr').hide()
    $('.powerLabel').hide()
    $('.powerInput').hide()
    $('.powerInput').attr('checked', false)
}
// 选择分公司角色 lfd added 20181008
function setBranchOffice() {
	if ($('.branchOffice').eq(0).is(':checked')) {
		// 权限
	    $('.powerTr').show()
	    // 卡申请
	    $('.powerLabel').eq(0).show()
	    $('.powerInput').eq(0).show()
	    // 卡复核
	    $('.powerLabel').eq(1).show()
	    $('.powerInput').eq(1).show()
	} else {
		// 重置权限
		hidePower()
	}
}
// 选择总公司角色 lfd added 20181008
function setHeadOffice() {
	if ($('.headOffice').eq(0).is(':checked')) {
		// 权限
        $('.powerTr').show()
        // 卡核准及导出excel
        $('.powerLabel').eq(2).show()
        $('.powerInput').eq(2).show()
        // 卡延期
        $('.powerLabel').eq(3).show()
        $('.powerInput').eq(3).show()
    } else {
        // 重置权限
        hidePower()
    }
}
// 显示弹窗  start
function openDeptDiv() {
	menuTreeInit()// 机构树初始化
	window.setTimeout(function () {
		//重置角色和权限 lfd added 20181010 start
		$('.comRole').hide()
		$('input.comRole').attr('checked', false)
		hidePower()// 重置权限
		//重置角色和权限 lfd added 20181010 end
		$('#deptDiv').OpenDiv();// 打开弹窗
	},1000)
}
// 显示弹窗  end
// 关闭弹窗 start
function closeDeptDiv() {
	closeCurrentDIV('deptDiv')
}
// 关闭弹窗 end
// 重置 start
function resetFun() {
	$('#username').val('')
	$('#email').val('')
	$('#usercode').val('')
	$('#telephone').val('')
	$('#comCode').val('')
	$('input:checkbox').attr('checked', false)
}
// 重置 end
// 新增或更新用户 start
function setUser() { 
	if (getUrlParam('userid')) {
		var flag = '1'
		var userid = getUrlParam('userid')
	} else {
		flag = '0'
	}
	var username = $('#username').val()
	var email = $('#email').val()
	var usercode = $('#usercode').val()
	var telephone = $('#telephone').val()
	var comCode = $('#comCode').val()
	// 校验非空
	if (!username) {
		$.message("error", "请输入用户名！");
		return
	} else if (!usercode) {
		$.message("error", "请输入姓名！");
		return
	} else if (!comCode) {
		$.message("error", "请输入机构代码！");
		return
	} else if ($("input[name='roleName']:checked").length == 0) {
		$.message("error", "请选择角色！");
		return
	}
	var roleName = $.map($("input[name='roleName']:checked"), function (v, i) {
		return v.value
	})
	var powerCode = []
	$.each($("input[name='powerCode']"), function (i, v) {
		if ($(v).attr("checked")) {
			powerCode += '1'
		} else {
			powerCode += '0'
		}
	})
	var param1 = {username: username, email: email, usercode: usercode, telephone: telephone, comCode: comCode, roleName: roleName, powerCode: powerCode}
	var param2 = {userid: userid, username: username, email: email, telephone: telephone, comCode: comCode, roleName: roleName, power: powerCode}
	if (flag === '0'){
		saveAndupdate(param1, flag)
	} else if (flag === '1') {
		saveAndupdate(param2, flag)
	}
}
function saveAndupdate(param, flag) {
	if (flag === '0') {
		url = 'adduser'
	} else if (flag === '1') {
		url = 'updateuser'
	}
	$.openLoading();
	$.ajax({
		url : "cardPower/" + url,
		type : 'POST',
		async : true,
		dataType:'json',
		data: param,
    	traditional: true,  //注意这个参数是必须的
		success: function(data){
			$.closeLoading();
			if("success"==data.result&&""!=data.message){
				// $.message("success", data.message);
				openPassWordDiv(data.message)// 返回初始密码 需要点击确定
			}
			if("fail"==data.result){
	    		$.message("error", "系统错误,请联系管理员");
	    	}
			if("error"==data.result&&""!=data.message){
	    		$.message("error", data.message);
	    	}
		}
	});
}
// 新增或更新用户 end
// 打开密码弹窗 start
function openPassWordDiv(str) {
	$('.div_body').html(str)
	$('#passwordDiv').OpenDiv();// 打开弹窗
}
//打开密码弹窗 end
// 关闭密码弹窗 start
function closePassWordDiv() {
	closeCurrentDIV('passwordDiv')
	self.location.href="<%=path%>/cardPower/list";
}
//关闭密码弹窗 end
//统一 关闭  窗口
function closeCurrentDIV(obj){
	$("#"+obj).CloseDiv();
}
</script>
</head>
<body>
	<div class="current">
		<table class="current_table_1">
			<tbody>
				<tr class="f2">
					<td><img src="./images/current_1.jpg"></td>
					<td class="current_table_1_td"><img src="images/current_1.png">&nbsp;您现在的位置：&nbsp;
						<span style="color: #136bab;">激活卡管理 <span
							style="padding: 0 5px; font-weight: bold; line-height: 28px;">&gt;</span>激活卡人员管理
							<span
							style="padding: 0 5px; font-weight: bold; line-height: 28px;">&gt;</span>
							<i style="font-style: normal;" class="add_link">新增</i>
					</span></td>
					<td><img src="./images/current_3.jpg"></td>
				</tr>
			</tbody>
		</table>
	</div>

	<form id="inputForm">
		<table class="table_05">
			<tbody>
				<tr>
					<td colspan="4"
						style="font-size: 12px; font-weight: bold; text-align: left; color: #3876bf; line-height: 17px; background-image: url(images/centent_1.jpg)">激活卡人员新增</td>
				</tr>
				<tr>
					<th width="25%">用户名：</th>
					<td width="25%">
						<input name="usercode" id="usercode" type="text" class="input_text">
						<span class="red">*</span>
					</td>
					<th width="25%">机构代码：</th>
					<td width="25%"><input id="comCode" type="text" class="input_text" disabled>
						<span class="red">*</span>
						<input type="button" class="input_button_2 open_btn" id="" value="请选择" onClick="openDeptDiv()" />
					</td>
				</tr>
				<tr>
					<th width="25%">姓名：</th>
					<td width="25%">
						<input name="username" id="username" type="text" class="input_text">
						<span class="red">*</span>
					</td>
					<th width="25%">电话号码：</th>
					<td width="25%" >
						<input id="telephone" type="text" class="input_text" >
					</td>
				</tr>
				<tr>
					<th width="25%">邮件地址：</th>
					<td width="25%" colspan="3">
						<input name="email" id="email" type="text" class="input_text">
					</td>
				</tr>
				<tr>
					<th width="25%">角色：</th>
					<td width="25%" colspan="3" class="roleidBox">
						
					</td>
				</tr>
				<tr class="hide powerTr">
					<th width="25%">权限：</th>
					<td width="25%" colspan="3">
						<input name="powerCode" class="hide powerInput" type="checkbox" value="0" id="auth_0"> <label class="hide powerLabel" for="auth_0">卡申请</label>
						<input name="powerCode" class="hide powerInput" type="checkbox" value="1" id="auth_1"> <label class="hide powerLabel" for="auth_1">卡复核</label>
						<input name="powerCode" class="hide powerInput" type="checkbox" value="2" id="auth_2"> <label class="hide powerLabel" for="auth_2">卡核准</label>
						<input name="powerCode" class="hide powerInput" type="checkbox" value="3" id="auth_3"> <label class="hide powerLabel" for="auth_3">卡延期</label>
						<input name="powerCode" class="hide powerInput" type="checkbox" value="4" id="auth_4"> <label class="hide powerLabel" for="auth_4">退卡申请</label>
						<input name="powerCode" class="hide powerInput" type="checkbox" value="5" id="auth_5"> <label class="hide powerLabel" for="auth_5">退卡复核</label>
					</td>
				</tr>
			</tbody>
		</table>
		<div align="center">
			<input id="sub" class="input_button_1" type="button" value="确定" onclick="setUser()">&nbsp;&nbsp; 
			<input id="reset" class="input_button_1" onclick="resetFun()" type="button" value="重置">
		</div>
	</form>
	<!-- begin ------------------------- DIV 默认隐藏--------------------------->
	<div id="deptDiv" style="display: none; width: 50%;">
		<div class="table_title_div">
			<table class="table_title" style='width: 100%; height: 20px;'>
				<tr>
					<td width="10%"></td>
					<td width="80%" id="interfaceName"></td>
					<td width="10%" align="right"><img
						src="./images/closedown.gif" alt="关闭"
						onclick="closeDeptDiv()" /></td>
				</tr>
			</table>
		</div>
		<div class="table_title_body scroll_body">
			<ul class="ztree" id="ztree">
			</ul>
		</div>
		<div align="center">
			<input class="input_button_3" type="button" onclick="selectDept()" value="确定">&nbsp;&nbsp; 
			<input class="input_button_3" type="button" onclick="closeDeptDiv()" value="取消">
		</div>
	</div>
	<!-- end -------------------------DIV 默认隐藏--------------------------->
	<!-- 初始密码弹窗 start -->
	<div id="passwordDiv" style="display: none; width: 40%;">
		<div class="div_body h_30"></div>
		<div class="div_btn" align="center">
			<input class="input_button_3" type="button" onclick="closePassWordDiv()" value="确定">
		</div>
	</div>
	<!-- 初始密码弹窗 end -->
	<div id="Loading" style="display:none" align="center">
		<img src="./images/loading.gif" />
	</div>
</body>
</html>